#include "MazeGame.h"
#include "MazePrototypeFactory.h"
#include "BombedWall.h"
#include "RoomWithABomb.h"

int main(void)
{
	MazeGame game;
	MazePrototypeFactory simpleMazeFactory(boost::shared_ptr<Maze> (new Maze), boost::shared_ptr<Wall>(new Wall), boost::shared_ptr<Room>(new Room), boost::shared_ptr<Door>(new Door));

	boost::shared_ptr<Maze> maze = game.CreateMaze(simpleMazeFactory);

	MazePrototypeFactory bombedMazeFactory(boost::shared_ptr<Maze> (new Maze), boost::shared_ptr<Wall>(new BombedWall), boost::shared_ptr<Room>(new RoomWithABomb), boost::shared_ptr<Door>(new Door));
	maze = game.CreateMaze(bombedMazeFactory);
}
